package org.fujay.langchain4jserver.application.command;

import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import lombok.Builder;
import lombok.Data;
import org.fujay.langchain4jserver.domain.model.vo.ModelId;

/**
 * 创建知识库命令
 */
@Data
@Builder
public class CreateKnowledgeBaseCommand {

    /**
     * 知识库名称 (必填)
     */
    @NotBlank(message = "知识库名称不能为空")
    private String name;

    /**
     * 知识库描述
     */
    private String description;

    /**
     * 嵌入模型ID (必填)
     */
    @NotNull(message = "必须指定嵌入模型ID")
    private ModelId embeddingModelId;

    /**
     * 命名空间
     */
    private String nameSpace;
}
